package com.party.core.service.gift;

import com.party.common.paging.Page;
import com.party.core.model.gift.Gift;
import com.party.core.model.gift.GiftListOut;
import com.party.core.model.gift.GiftListOutput;
import com.party.core.service.IBaseService;

import java.util.List;
import java.util.Map;

/**
 * @Author: Administrator.
 * @Description: 礼包
 * @Date:Created in 2017/11/15 0015 上午 10:34.
 */
public interface IGiftService extends IBaseService<Gift> {
    /**
     * web端查询
     *
     * @param gift
     * @param params
     * @param page
     * @return
     */
    List<GiftListOutput> webListPage(GiftListOutput gift, Map<String, Object> params, Page page);

    /**
     * 根据项目id获取礼包
     *
     * @param targetId 项目id
     * @param type     项目类型
     * @return
     */
    List<Gift> findByTargetId(String targetId, String type);

    /**
     * 获取用户所有礼包（已领取、未领取）
     *
     * @param memberId
     * @param page
     * @return
     */
    List<GiftListOut> findAllByMemberId(String memberId, Integer progress, Page page);

    /**
     * 获取过期的礼包
     *
     * @param memberId 用户id
     * @return
     */
    List<String> getOverdue(String memberId);
}
